package recursive.fib;
/**
 * @Date 2020/03/29
 * @author 王光浩
 * @Thinking 在备忘录模式的基础上使用动态规划。将空间复杂度进行了优化。
 * @Analysis 时间复杂度O（n），空间复杂度O（1）
 */
public class MyMethodThree {
	public int fib(int N) {
		if(N<2)return N;
		int first=0;  
		int second=1;
		for(int i=2;i<=N;i++) {
			first=second+first;
			//进行交换
			first=first^second;
			second=first^second;
			first=second^first;
		}
		return second;
	}
}
